<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://Microsoft.ConnectionEngine/Schemas/ServiceProviderRegister" targetNamespace="http://Microsoft.ConnectionEngine/Schemas/ServiceProviderRegister" elementFormDefault="qualified" attributeFormDefault="unqualified">
  <xs:element name="request" nillable="true">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="1" maxOccurs="1" name="UserCredentials" type="UserCredentials" />
        <xs:element minOccurs="1" maxOccurs="1" name="ServiceProvider" type="ServiceProvider" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="UserCredentials">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="UserName" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="Password" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ServiceProvider" nillable="true" type="ServiceProvider" />
  <xs:complexType name="ServiceProvider">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="DisplayName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="SystemName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="PublicKey" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="WebServiceURL" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="EncryptionAlgorithm" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Contact" type="Contact" />
      <xs:element minOccurs="0" maxOccurs="1" name="ServiceProviderType" type="ServiceProviderType" />
      <xs:element minOccurs="0" maxOccurs="1" name="ServiceProviderID" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="Contact">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="Name" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="AddressLine1" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="AddressLine2" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="City" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="PostalCode" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Province" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Country" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Phone" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Fax" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Email" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ServiceProviderType">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="ServiceProviderTypeID" type="xs:int" />
      <xs:element minOccurs="0" maxOccurs="1" name="DisplayName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="ServiceProviderTypeCode" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
</xs:schema>